home
***
CD-ROM
|
disk
|
FTP
|
other
***
search
/
AOL File Library: 2,801 to 2,900
/
aol-file-protocol-4400-2801-to-2900.zip
/
AOLDLs
/
C++ Files Library
/
Hide Menu Bar (C++)
/
HideMenuBar.cp
next >
Wrap
Text File
|
2014-09-28
|
1KB
|
55 lines
// globals for this file
static Boolean gMenuBarIsHidden = false; // true if menu bar is hidden
static short gMenuBarHeight; // original menu bar height
static rect gMenuBarBounds; // bounds of menu bar
static RgnHandle gOldGrayRgn = nil; // saved gray region
// HideMenuBar -- save current GrayRgn and MBarHeight, hide the menu bar
void HideMenuBar(void)
{
if ( !gMenuBarIsHidden ) {
gMenuBarHeight = LMGetMBarHeight();
LMSetMBarHeight(0);
if ( gOldGrayRgn == nil ) gOldGrayRgn = NewRgn();
CopyRgn(LMGetGrayRgn(), gOldGrayRgn);
RgnHandle menuRgn = NewRgn();
rect menuRect = qd.screenBits.bounds;
menuRect.bottom(gMenuBarHeight);
RectRgn(menuRgn, menuRect);
UnionRgn(LMGetGrayRgn(), menuRgn, LMGetGrayRgn());
PaintBehind(FrontWindow(), menuRgn);
CalcVisBehind(FrontWindow(), menuRgn);
DisposeRgn(menuRgn);
gMenuBarIsHidden = true;
}
}
// ShowMenuBar -- restore the menu bar and GrayRgn
void ShowMenuBar(void)
{
if ( gMenuBarIsHidden ) {
LMSetMBarHeight(gMenuBarHeight);
CopyRgn(gOldGrayRgn, LMGetGrayRgn());
rect menuRect = qd.screenBits.bounds;
menuRect.bottom(gMenuBarHeight);
RectRgn(gOldGrayRgn, menuRect);
PaintBehind(FrontWindow(), gOldGrayRgn);
CalcVisBehind(FrontWindow(), gOldGrayRgn);
DrawMenuBar();
DisposeRgn(gOldGrayRgn);
gOldGrayRgn = nil;
gMenuBarIsHidden = false;
}
}